export interface IUserData {
  code: string;
  msg: string;
  data: Data;
}
export interface Data {
  userInfo: UserInfo;    // 用户基本信息
  permissions: string[]; // 权限标识数组（如["*:*:*"]）
  units: Units;          // 所属机构信息
  roles: Role[];         // 角色信息数组
}

export interface UserInfo {
  id: string;           // 用户唯一标识符
  username: string;     // 登录用户名
  realName: string;     // 真实姓名
  userType: number;     // 用户类型（0：普通账号；1：超级管理员）
  email: string;        // 绑定邮箱地址
  phone: string;        // 绑定手机号码
  gender: number;       // 性别（1：男；2：女；0：未知）
  avatar: string;       // 头像URL路径
  enabled: number;      // 账号状态（0：禁用；1：正常）
  delFlag: number;      // 删除标记（0：有效；1：删除）
  remark: string | null;// 备注信息（可能为null）
}

export interface Units {
  id: string;           // 机构唯一标识
  name: string;         // 机构名称
  code: string;         // 机构编码
  codeseq: string;      // 机构层级编码序列
  contact: string;      // 机构联系人姓名
  mobile: string;       // 联系人手机号码
  email: string;        // 联系人邮箱地址
  web: string;          // 机构官方网站地址
  parentId: string;     // 上级机构ID（-1表示无上级）
  hasChildren: number;  // 是否包含子机构（1：有；0：无）
  system: number;       // 系统内置标识（1：是；0：否）
  enabled: number;      // 机构启用状态（1：启用；0：禁用）
  leaderId: string | null; // 机构负责人ID（可能为null）
  createBy: string;     // 创建者ID
  createTime: number;   // 创建时间戳（毫秒级）
  updateBy: string | null; // 最后更新者ID（可能为null）
  updateTime: number | null; // 最后更新时间戳（可能为null）
  address: string;      // 机构详细地址
}

export interface Role {
  id: string;           // 角色唯一标识
  roleName: string;     // 角色显示名称
  rolePerm: string;     // 角色权限标识（如ROLE_ADMIN）
}
